;==========================================================
; Area meta-properties.
;==========================================================
[AreaProperties]
NumAreas=8

;==========================================================
; Data for each area.
; Properties:
;   BankNum: bank containing the level data.
;   EntranceAddressTableBankedOffset: offset of the entrance pattern
;     lookup table, in raw banked format.
;   EntranceAddressTableOffset: direct offset of the entrance pattern
;     lookup table.
;   EntraceAddressTableEndOffset: direct offset of the last byte
;     in the entrance pattern lookup table plus one.
;   NumEntrances: number of entrances in the entrance pattern lookup table.
;==========================================================

[Area0]
BankNum=6
EntranceAddressTableOffset=0x1B9AC
NumEntrances=0x0D
AreaDataOffset=0x1B9C6
AreaDataEndOffset=0x1BB43

[Area1]
BankNum=6
EntranceAddressTableOffset=0x1BB43
NumEntrances=0x0E
AreaDataOffset=0x1BB5F
AreaDataEndOffset=0x1BCE5

[Area2]
BankNum=5
EntranceAddressTableOffset=0x17896
NumEntrances=0x1F
AreaDataOffset=0x178D4
AreaDataEndOffset=0x17BED

[Area3]
BankNum=5
EntranceAddressTableOffset=0x17BED
NumEntrances=0x27
AreaDataOffset=0x17C3B
AreaDataEndOffset=0x17FB8

[Area4]
BankNum=4
EntranceAddressTableOffset=0x13677
NumEntrances=0x2E
AreaDataOffset=0x136D3
AreaDataEndOffset=0x13B49

[Area5]
BankNum=4
EntranceAddressTableOffset=0x13B49
NumEntrances=0x28
AreaDataOffset=0x13B99
AreaDataEndOffset=0x13F89

[Area6]
BankNum=3
EntranceAddressTableOffset=0xF5A5
NumEntrances=0x2E
AreaDataOffset=0xF601
AreaDataEndOffset=0xFA65

[Area7]
BankNum=3
EntranceAddressTableOffset=0xFA65
NumEntrances=0x41
AreaDataOffset=0xFAE7
AreaDataEndOffset=0xFFA8

;==========================================================
; Pattern definition data.
;==========================================================
[PatternDefinitionProperties]
NumPatternDefinitionTables=4

[PatternDefinitionTable0]
;TableIndexOffset=0x1980B
TableIndexEntries=0x83
TableDataOffset=0x19911
TableDataEndOffset=0x1ACDC

[PatternDefinitionTable1]
;TableIndexOffset=0x1580B
TableIndexEntries=0x98
TableDataOffset=0x1593B
TableDataEndOffset=0x16F53

[PatternDefinitionTable2]
;TableIndexOffset=0x1180B
TableIndexEntries=0x95
TableDataOffset=0x11935
TableDataEndOffset=0x12F98

[PatternDefinitionTable3]
;TableIndexOffset=0xD80B
TableIndexEntries=0x99
TableDataOffset=0xD93D
TableDataEndOffset=0xEEBF

;==========================================================
; Palette offsets.
;==========================================================
[Palettes]
StandardPaletteOffset=0x1FB9F
BossPaletteOffset=0x1F582
CaveReplacementTableOffset=0x1F61A
NumCaveReplacementTableEntries=4
BaseReplacementTableOffset=0x1F5BA
NumBaseReplacementTableEntries=8
BossReplacementTableOffset=0x1F5A2
NumBossReplacementTableEntries=8
PaletteCycleTableBaseOffset=0x076D
NumPaletteCycleTableEntries=4
LaylaFadeTableOffset=0x1CD6B
NumLaylaFadeTableEntries=6

;==========================================================
; Graphics offsets.
;==========================================================
[Graphics]
CaveSpritesOffset=0x00000
CaveBackgroundOffset=0x01000
BaseSpritesOffset=0x02000
BaseBackgroundOffset=0x03000
BossSpritesOffset=0x04000
BossBackgroundOffset=0x05000
TitleSpritesOffset=0x06000
TitleBackgroundOffset=0x07000

;==========================================================
; Object pattern offsets.
;==========================================================
[ObjectPatternSet0]
;IndexOffset=0x1943C
NumIndexEntries=0xA0
PatternDataStartOffset=0x1957C
PatternDataEndOffset=0x19595

[ObjectPatternSet1]
;IndexOffset=0x1543C
NumIndexEntries=0x9B
PatternDataStartOffset=0x15572
PatternDataEndOffset=0x1558A

[ObjectPatternSet2]
;IndexOffset=0x1143C
NumIndexEntries=0x9B
PatternDataStartOffset=0x11572
PatternDataEndOffset=0x11583

[ObjectPatternSet3]
;IndexOffset=0xD43C
NumIndexEntries=0x9B
PatternDataStartOffset=0xD572
PatternDataEndOffset=0xD583

;==========================================================
; Object code block offsets.
;==========================================================
[ObjectCodeBlock0]
BlockStartOffset=0x1ACDC
BlockEndOffset=0x1B9AC

[ObjectCodeBlock1]
BlockStartOffset=0x16F53
BlockEndOffset=0x17896

[ObjectCodeBlock2]
BlockStartOffset=0x12F98
BlockEndOffset=0x13677

[ObjectCodeBlock3]
BlockStartOffset=0xEEBF
BlockEndOffset=0xF5A5

;==========================================================
; Movable bank free space offsets.
;==========================================================
[LevelFreeSpaceBlock0]
BlockStartOffset=0x1BCE5
BlockEndOffset=0x1C000

[LevelFreeSpaceBlock1]
BlockStartOffset=0x17FB8
BlockEndOffset=0x18000

[LevelFreeSpaceBlock2]
BlockStartOffset=0x13F89
BlockEndOffset=0x14000

[LevelFreeSpaceBlock3]
BlockStartOffset=0xFA65
BlockEndOffset=0x10000

;==========================================================
; Fixed bank offset.
;==========================================================
[FixedBankOffset]
BankStartOffset=0x1C000
BankEndOffset=0x20000

;==========================================================
; Fixed bank free space offsets.
;==========================================================
[FixedBankFreeSpaceProperties]
NumBlocks=1

; unused code for drawing "third character" if 046A is 3B
[FixedBankFreeSpaceBlock0]
BlockStartOffset=0x1C732
BlockEndOffset=0x1C759

;==========================================================
; Cave and boss metatile definition table offsets.
;==========================================================
[MetatileDefinitionTableOffsets]
NumCaveMetatiles=66
CaveEvenTilesTableOffset=0x1F2F2
CaveOddTilesTableOffset=0x1F376
CaveAttributeTableOffset=0x1F2E1
CavePropertiesTableOffset=0x1F3FA

NumBossMetatiles=62
BossEvenTilesTableOffset=0x1F44C
BossOddTilesTableOffset=0x1F4C8
BossAttributeTableOffset=0x1F43C
BossPropertiesTableOffset=0x1F544